package BancoCriar;

import java.util.ArrayList;
import java.util.Date;

import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

import entities.Cliente;
import entities.Cobranca;
import entities.Contato;
import entities.ContatoCobranca;
import entities.Dominio;
import entities.Endereco;

import entities.EnderecoFuncionario;
import entities.Periodo;
import entities.Servico;
import entities.Servidor;
import entities.Sistema;
import entities.TelaSite;
import entities.TipoServico;
import entities.TipoSistema;
import entities.Usuario;

public class CriarClassesBanco {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		EntityManagerFactory factory = Persistence.createEntityManagerFactory("gugateste");
		
		EntityManager em = factory.createEntityManager();
		
		em.getTransaction().begin();
		Cliente cliente = new Cliente();
		
		cliente.setCnpj("595.505.555-05");
		Cobranca cobranca = new Cobranca();
		cobranca.setAtraso(0);
		cobranca.setCliente(cliente);
		cobranca.setCodigoBoleto("boleto");
		Date data = new Date(17-05-1991);
		cobranca.setDataCobranca(data);
		cobranca.setJuros(0);
		cobranca.setPago(false);
		
		Servico servico1 = new Servico();
		servico1.setCobranca(cobranca);
		Periodo periodo = new Periodo();
		
		periodo.setDescricao("Semestral");
		periodo.setDuracao(6);
		periodo.setServico(servico1);
				
		servico1.setPeriodo(periodo);
		
		TipoServico tipoServico = new TipoServico();
		
		tipoServico.setDescricao("Servico(ADMNISTER");
		tipoServico.setNome("Servico(ADMINISTER");
		tipoServico.setServico(servico1);
		
		servico1.setTipoServico(tipoServico);
		
		servico1.setValor(32.5);
		
		ArrayList<Servico> servicos = new ArrayList<Servico>();
		
		servicos.add(servico1);
		
		cobranca.setServico(servicos);
		
	
		
		cliente.setCobranca(cobranca);
		
		Contato contato =  new Contato();
		contato.setCliente(cliente);
		contato.setEmail("augustovinicius_guga@hotmail.com");
		contato.setNome("Augusto Vinicius Pereira Rodrigues da Silva");
		contato.setTelefone("(81) 3268-9084");
		
		ArrayList<Contato> contatos =  new ArrayList<Contato>();
		
		contatos.add(contato);
		
		ContatoCobranca contatoc = new ContatoCobranca();
		contatoc.setCliente(cliente);
		contatoc.setEmail("augustovinicius_guga@hotmail.com");
		contatoc.setNome("Augusto Vinicius Pereira Rodrigues da Silva");
		contatoc.setTelefone("(81) 3268-9084");

		ArrayList<ContatoCobranca> contatosC = new ArrayList<ContatoCobranca>();
		contatosC.add(contatoc);
		cliente.setContatos(contatos);
		cliente.setContatosC(contatosC);
		cliente.setDescricaoEmpresa("234 fs da silva saura");
		Dominio dominio1 = new Dominio();
		dominio1.setCliente(cliente);
		dominio1.setDominio("google.com");
		dominio1.setExpiracao(data);
		dominio1.setGerenciamento(1);
		dominio1.setLogin("testeBrNet");
		dominio1.setSenha("md5vaiaqui");
		ArrayList<Dominio> dominio = new ArrayList<Dominio>();
		
		dominio.add(dominio1);
		Servidor servidor = new Servidor();
		
		servidor.setFtp("ftp.brasilnet.com.br");
		
		servidor.setDominio(dominio);
		
		servidor.setLogin("augusto");
		servidor.setSenha("guga");
		servidor.setServidor("KingHost");
		
		dominio1.setServidor(servidor);
		
		cliente.setDominio(dominio);
		
		Endereco endereco = new Endereco();
		
		endereco.setBairro("Casa Amarela");
		endereco.setCep("52070-480");
		endereco.setCidade("Recife");
		endereco.setEstado("PE");
		endereco.setNumero(95);
		endereco.setRua("95");
		
		cliente.setEndereco(endereco);
		
		cliente.setFantasia("Augusto Development");
		cliente.setRazaoSocial("augusto");
		ArrayList<Sistema> sistemas = new ArrayList<Sistema>();
		
		Sistema sistema = new Sistema();
		sistema.setCliente(cliente);
		sistema.setLogin("facanacaveira");
		sistema.setSenha(" 123123123");
		TipoSistema tipoSistema = new TipoSistema();
		
		tipoSistema.setNome("actuale");
		tipoSistema.setSistema(sistema);
		sistema.setTipoSistema(tipoSistema);
		sistemas.add(sistema);
		cliente.setSistemas(sistemas);
		
		TelaSite telaSite1 = new TelaSite();
		
		telaSite1.setCliente(cliente);
		telaSite1.setImagem("123123123123.jpg");
		
		ArrayList<TelaSite> telasSite = new ArrayList<TelaSite>();
		cliente.setTelasSite(telasSite);
		
		Usuario user = new Usuario();
		
		user.setAcesso(1);
		user.setCurriculo("");
		EnderecoFuncionario endereco1 = new EnderecoFuncionario();
		endereco1.setBairro("casa amarela");
		endereco1.setCep("52070-480");
		endereco1.setCidade("Recife");
		endereco1.setEstado("PE");
		endereco1.setNumero(95);
		endereco1.setRua("Rua Carolina");
		user.setEndereco(endereco1);
		user.setLogin("guga");
		user.setSenha("123");
		user.setNome("Augusto Vinicius Pereira Rodrigues da Silva");
		
	
		em.persist(cliente);
		em.persist(cobranca);
		em.persist(contato);
		em.persist(contatoc);
		em.persist(dominio1);
		em.persist(endereco);
		em.persist(periodo);
		em.persist(servidor);
		em.persist(servico1);
		em.persist(sistema);
		em.persist(telaSite1);
		em.persist(tipoServico);
		em.persist(tipoSistema);
		em.persist(user);
		endereco1.setUsuario(user);
		em.persist(endereco1);
		
		
		em.getTransaction().commit();
//		em.close();
	}

}
